export const status = [
  { value: 1, label: '启用' },
  { value: 2, label: '禁用' }
]

export const openStatus = [
  { value: 0, label: '关闭' },
  { value: 1, label: '开启' }
]

export const runStatusOptions = [
  { value: 0, label: '关闭' },
  { value: 1, label: '开启' }
]

export const repeatTimesOptions = [
  { value: 1, label: 1 },
  { value: 2, label: 2 }
]

export const callStatus = [
  { value: 1, label: '拒接' },
  { value: 2, label: '无法接通' },
  { value: 3, label: '呼叫失败' }
]

// 短信发送规则枚举
export const smsRuleOptions = [
  { value: 0, label: '按通话状态发送' },
  { value: 2, label: '按意向等级发送' }
]

// 任务短信 通话状态枚举
export const callStatusOptions = [
  {
    value: '1', label: '已接听', en: 'HAS_BEEN_ANSWERED', class: 'green'
  },
  {
    value: '2', label: '空号', en: 'EMPTY_NUMBER', class: 'red'
  },
  {
    value: '3', label: '关机', en: 'POWER_OFF', class: 'red'
  },
  {
    value: '4', label: '停机', en: 'DOWNTIME', class: 'red'
  },
  {
    value: '5', label: '无人接听', en: 'NO_ONE_IS_ANSWERING', class: 'red'
  },
  {
    value: '6', label: '无法接通', en: 'UNABLE_TO_CONNECT', class: 'red'
  },
  {
    value: '7', label: '通话中', en: 'IN_THE_CALL', class: 'green'
  },
  {
    value: '8', label: '呼叫失败', en: 'CALL_FAILURE', class: 'red'
  },
  {
    value: '9', label: '来电提醒', en: 'PHONE_CALLS_REMINDING', class: 'red'
  },
  {
    value: '10', label: '用户挂断', en: 'USER_HANG_UP', class: 'red'
  },
  {
    value: '11', label: '号码有误/不存在', en: 'WRONG_NUMBER', class: 'red'
  },
  {
    value: '12', label: '黑名单', en: 'BLACKLIST_RESTRICTIONS', class: 'red'
  },
  {
    value: '13', label: '呼叫限制', en: 'CALL_RESTRICTIONS', class: 'red'
  },
  {
    value: '14', label: '无需拨打', en: 'BALANCE_ENOUGH', class: 'red'
  },
  {
    value: '15', label: '接通限制', en: 'CONNECT_RESTRICTIONS', class: 'red'
  }
]

// 意图的枚举方法
export const intentionLevelOptions = [
  { value: 'A', label: 'A级(有明确意向)' },
  { value: 'B', label: 'B级(可能有意向)' },
  { value: 'C', label: 'C级(明确拒绝)' },
  { value: 'D', label: 'D级(用户忙)' },
  { value: 'E', label: 'E级(拨打失败)' },
  { value: 'F', label: 'F级(无效客户)' }
]

// 任务新建、编辑通话状态枚举
export const taskCallStatusOptions = [
  {
    value: '3', label: '关机', en: 'POWER_OFF', class: 'red'
  },
  {
    value: '4', label: '停机', en: 'DOWNTIME', class: 'red'
  },
  {
    value: '5', label: '无人接听', en: 'NO_ONE_IS_ANSWERING', class: 'red'
  },
  {
    value: '6', label: '无法接通', en: 'UNABLE_TO_CONNECT', class: 'red'
  },
  {
    value: '7', label: '通话中', en: 'IN_THE_CALL', class: 'green'
  },
  {
    value: '8', label: '呼叫失败', en: 'CALL_FAILURE', class: 'red'
  },
  {
    value: '9', label: '来电提醒', en: 'PHONE_CALLS_REMINDING', class: 'red'
  },
  {
    value: '10', label: '用户挂断', en: 'USER_HANG_UP', class: 'red'
  }
]

// 叶子结点类型
export const casePoolOptions = [
  {
    value: 1,
    label: '智能客服'
  },
  {
    value: 2,
    label: 'IVR'
  },
  {
    value: 3,
    label: '短信'
  },
  {
    value: 4,
    label: '结案'
  }
]

// 任务类型
export const functionTypeOptions = [{ value: 1, label: '机器人任务' }, { value: 2, label: 'IVR任务' }]

// 是否枚举值
export const enums = [
  { value: 0, label: '否' },
  { value: 1, label: '是' }
]

// 字段类型
export const variableTypes = [
  { value: 'string', label: '字符' },
  { value: 'number', label: '数字' },
  { value: 'date', label: '日期' },
  { value: 'enums', label: '枚举' }
]
// 枚举定义集合

// 通用
// 是与否
export const yesOrNoOptions = [
  { value: 1, label: '是' },
  { value: 0, label: '否' }
]
// 禁用/启用状态枚举
export const statusOptions = [
  { value: 0, label: '禁用', class: 'forbit' },
  { value: 1, label: '启用', class: 'text-theme-color' }
]
// 是否停案
export const isStopOptions = [
  { value: 0, label: '正常' },
  { value: 1, label: '停案' }
]

// 策略执行状态
export const strategyStatusOptions = [
  { value: 1, label: '待执行' },
  { value: 2, label: '暂停中' }
]

// 人工案件-分配状态
export const caseAssignStatusOptions = [
  { value: 1, label: '未分配' },
  { value: 0, label: '已分配' }
]

// 人工案件-作业员状态
export const caseCollectStatusOptions = [
  { value: 1, label: '新单' },
  { value: 0, label: '旧单' }
]

export const isAutoOptions = [
  { value: 1, label: '自动' },
  { value: 0, label: '手动' }
]

// 人工案件-流程状态
export const processStatusOptions = [
  { value: 1, label: '审批中', apply: true },
  {
    value: 2, label: '待审批', apply: true, waitAudit: true
  },
  { value: 3, label: '已撤销' },
  { value: 4, label: '同意' },
  { value: 5, label: '拒绝' }
]

// 案件申请类型枚举
export const applyTypeOptions = [
  { value: 1, label: '停案', apply: 'stop' },
  { value: 2, label: '减免', apply: 'decrease' },
  { value: 3, label: '业务转换', apply: 'transfer' },
  { value: 4, label: '留案', apply: 'leave' },
  { value: 5, label: '协催', apply: 'assist' },
  { value: 6, label: '退案', apply: 'charge' }
]

// 人工业务案件管理 - 电话来源
export const phoneSourceOptions = [
  { value: 1, label: '系统上传' },
  { value: 2, label: '手工填写' },
  { value: 3, label: '信息修复' }
]

// 人工业务案件管理 - 可能性
// export const accessibilityOptions = [
//   { value: 1, label: '高' },
//   { value: 2, label: '中' },
//   { value: 3, label: '低' }
// ];
// 人工业务案件管理 - 案件来源
export const caseSourceOptions = [
  { value: 1, label: '人工业务进件' },
  { value: 2, label: '智能业务转入' }
]

// 特殊名单转入类型
export const transferTypeOptions = [
  { value: 1, label: '智能转入' },
  { value: 2, label: '人工转入' },
  { value: 3, label: '委外转入' },
  { value: 4, label: '司法转入' },
  { value: 5, label: '待分转入' },
  { value: 99, label: '名单上传' }
]

// 权限相关
// 权限类型
export const authCategoryOptions = [
  { value: 1, label: '菜单', color: 'blue' },
  { value: 2, label: '页面', color: 'green' },
  { value: 3, label: '操作', color: 'orange' }
]

// 案件池，strategy：true时，配置策略用 3.26增加结案选项
// export const casePoolOptions = [
//   {
//     value: 1,
//     label: '智能',
//     strategy: true,
//     upload: false,
//     search: true,
//     en: 'ai'
//   },
//   {
//     value: 2,
//     label: '人工',
//     strategy: true,
//     upload: true,
//     search: true,
//     en: 'manual'
//   },
//   {
//     value: 3,
//     label: '委外',
//     strategy: true,
//     upload: true,
//     search: true,
//     en: 'outside'
//   },
//   {
//     value: 4,
//     label: '司法',
//     strategy: true,
//     upload: true,
//     search: true,
//     en: 'justice'
//   },
//   {
//     value: 5,
//     label: '待分',
//     strategy: true,
//     upload: false,
//     search: true,
//     en: 'exception'
//   },
//   {
//     value: 6,
//     label: '结案',
//     strategy: true,
//     upload: false,
//     search: false,
//     en: 'over'
//   }
// ];

export const departmentTypeOptions = [
  { value: 1, label: '人工', color: 'blue' },
  { value: 2, label: '智能', color: 'orange' },
  { value: 99, label: '其他', color: 'grey' }
]

export const smsStatusOptions = [
  { value: 0, label: '正在发送' },
  { value: 1, label: '发送成功' },
  { value: 2, label: '其他发送失败' }
]

// 字段管理
// 模板类型
export const templateTypeOptions = [
  {
    value: 1, label: '外呼明细模板', edit: true, search: true
  },
  {
    value: 2, label: '通用业务模板', edit: true, search: true
  },
  {
    value: 3, label: '自定义字段模板', edit: true, search: true
  },
  {
    value: 4, label: '内置外呼明细模板', edit: false, search: true
  },
  {
    value: 5, label: '内置案件上传模板', edit: false, search: true
  },
  {
    value: 6, label: '系统字段', edit: false, search: true
  },
  {
    value: 7, label: '还款内置模板', edit: false, search: true
  },
  {
    value: 8, label: '联系人内置模板', edit: false, search: true
  },
  {
    value: 9, label: '银行卡内置模板', edit: false, search: true
  },
  {
    value: 10, label: '话术流程', edit: false, search: false
  },
  {
    value: 11, label: '结案上传模板', edit: false, search: true
  },
  {
    value: 12, label: '特殊名单模板', edit: false, search: true
  }
]
// 字段类型
export const groupOptions = [
  { value: 'basic', label: '基本信息' },
  { value: 'overdue', label: '逾期信息' }
]

// 模板状态
export const templateStatusOptions = [
  { value: 1, label: '已启用', class: 'text-theme-color' },
  { value: 2, label: '已禁用', class: 'forbit' },
  { value: 3, label: '草稿', class: '' }
]
// 字段类型
export const fieldTypeOptions = [
  { value: 0, label: '整数' },
  { value: 1, label: '小数' },
  { value: 2, label: '日期' },
  { value: 3, label: '字符串' },
  { value: 4, label: '身份证号', hvalueden: true },
  { value: 5, label: '手机号', hvalueden: true }
]
// 日期格式
export const dateFormatOptions = [
  { key: 1, value: 'yyyyMMdd', label: '20200131' },
  { key: 2, value: 'yyyy/MM/dd', label: '2020/01/31' },
  { key: 3, value: 'yyyy-MM-dd', label: '2020-01-31' },
  { key: 4, value: 'yyyy/MM/dd HH:mm:ss', label: '2020/01/31 23:00:00' },
  { key: 5, value: 'yyyy-MM-dd HH:mm:ss', label: '2020-01-31 23:00:00' }
]

// 外呼任务相关

// 外呼任务状态枚举
export const callTaskStatusOptions = [
  {
    value: 0, label: '未开启', en: '', class: 'not-ready', search: true
  },
  {
    value: 1, label: '排队中', en: '', class: 'waiting', search: true
  },
  {
    value: 2, label: '启动失败', en: '', class: 'start-fail', search: true
  },
  {
    value: 3, label: '进行中', en: '', class: 'running', search: true
  },
  {
    value: 4, label: '等待回调', en: '', class: 'waiting', search: true
  },
  {
    value: 5, label: '已完成', en: '', class: 'finish', search: true
  },
  {
    value: 6, label: '系统暂停', en: '', class: 'system-stop', search: true
  },
  {
    value: 7, label: '手动暂停', en: '', class: 'manual-stop', search: true
  },
  {
    value: 8, label: '已结束', en: '', class: 'over', search: true
  },
  {
    value: 9, label: '自动暂停', en: '', class: 'auto-stop', search: true
  },
  {
    value: 11, label: '等待重呼', en: '', class: 'recall', search: true
  }
]

// 质检任务状态枚举
export const qualityTaskStatusOptions = [
  {
    value: 1, label: '进行中', en: '', class: 'running'
  },
  {
    value: 2, label: '已完成', en: '', class: 'finish'
  },
  {
    value: 3, label: '调度中', en: '', class: 'waiting'
  },
  {
    value: 4, label: '暂停', en: '', class: 'system-stop'
  }
]

// 启动方式枚举
export const startTypeOptions = [
  { value: 2, label: '手动启动' },
  { value: 1, label: '定时启动' }
]

// 特殊名单文件类型枚举
export const specialTypeOptions = [
  { value: 1, label: '黑名单', column: 'isBlack' },
  { value: 2, label: '白名单', column: 'isWhite' }
]

// 上传下载任务状态监控
// 上传文件类型
export const uploadTypeOptions = [
  { value: 1, label: '案件上传' },
  {
    value: 2, label: '案件更新', en: 'update', title: '案件更新'
  },
  {
    value: 3,
    label: '联系人',
    en: 'contact',
    title: '联系方式上传',
    templateType: 8
  },
  {
    value: 4,
    label: '银行卡',
    en: 'bankcard',
    title: '银行卡信息上传',
    templateType: 9
  },
  {
    value: 5,
    label: '还款',
    en: 'repayment',
    title: '还款信息上传',
    templateType: 7
  },
  {
    value: 6,
    label: '结案',
    en: 'caseOver',
    title: '案件结案上传',
    templateType: 11
  },
  { value: 7, label: '特殊名单上传' }
]

// 上传状态
export const uploadStatusOptions = [
  { value: 1, label: '执行中' },
  { value: 2, label: '执行中' },
  { value: 3, label: '已完成' },
  { value: 4, label: '数据出错' },
  { value: 5, label: '系统异常' }
]

// 上传状态
export const downloadStatusOptions = [
  { value: 1, label: '执行中' },
  { value: 2, label: '已完成' },
  { value: 3, label: '系统异常' }
]
// 数据调用产品类别
export const callTypeOptions = [
  { value: 7, label: '画像' },
  { value: 8, label: '易搜失联修复' }
]

export const downloadTypeOptions = [
  { value: 1, label: '智能案件外呼记录下载' },
  // { value: 2, label: '智能案件下载' },
  { value: 3, label: '智能任务下载' },
  { value: 4, label: '人工作业记录下载' },
  { value: 5, label: '案件列表下载' },
  { value: 6, label: '特殊名单下载' },
  { value: 51, label: '智能案件列表录音下载' }
]

// 人工业务案件管理 - 触发状态
export const touchStatusOptions = [
  {
    value: 1,
    label: '电话接通',
    children: [
      { value: 101, label: '承诺还款' },
      { value: 102, label: '协商跟进' },
      { value: 103, label: '无还款意愿' },
      { value: 104, label: '三方转告' },
      { value: 105, label: '三方不配合' },
      { value: 106, label: '非本人接听' },
      { value: 107, label: '其他' }
    ]
  },
  {
    value: 2,
    label: '电话未接通',
    children: [
      { value: 201, label: '无人接听' },
      { value: 202, label: '电话占线' },
      { value: 203, label: '电话设置' },
      { value: 204, label: '关机' },
      { value: 205, label: '停机' },
      { value: 206, label: '空号' },
      { value: 207, label: '其他' }
    ]
  }
]

export const collectionSummaryOptions = [
  { value: 1, label: '待对账' },
  { value: 2, label: '承诺还款' }
]

// 案件详情操作类型的枚举
export const optTypeOptions = [
  { value: 1, label: '自动分单' },
  { value: 2, label: '手动分单' },
  { value: 3, label: '批量分单' },
  { value: 4, label: '业务转换' },
  { value: 5, label: '批量停案' },
  { value: 6, label: '批量结案' },
  { value: 7, label: '策略暂停' },
  { value: 8, label: '策略恢复' },
  { value: 9, label: '策略修改' },
  { value: 10, label: '申请留案' },
  { value: 11, label: '取消申请留案' },
  { value: 12, label: '同意留案' },
  { value: 13, label: '拒绝留案' },
  { value: 14, label: '申请协催' },
  { value: 15, label: '取消申请协催' },
  { value: 16, label: '同意协催' },
  { value: 17, label: '拒绝协催' },
  { value: 18, label: '申请退案' },
  { value: 19, label: '取消申请退案' },
  { value: 20, label: '同意退案' },
  { value: 21, label: '拒绝退案' },
  { value: 22, label: '转入黑名单' },
  { value: 23, label: '转入白名单' },
  { value: 24, label: '批量恢复' },
  { value: 25, label: '司法分单' },
  { value: 26, label: '委外分单' },
  { value: 27, label: '策略分案' },
  { value: 28, label: '撤销分单' },
  { value: 29, label: '推送委外机构sftp' },
  { value: 30, label: '自动结案' },
  { value: 31, label: '手动上传案件' },
  { value: 32, label: '手动结案' }
]
// 案件分配归属类型
export const dispatchBelongTypeOptions = [
  { value: 1, label: '业务员' },
  { value: 2, label: '部门' },
  { value: 3, label: '组长' }
]

// 人工线路类型
export const lineTypeOptions = [{ value: 14, label: '金科' }]
// 策略配置方法
export const functionList = [
  {
    value: 'max',
    text: '求最大值',
    description: '返回一组数值中的最大值',
    parameters: [
      {
        default: '',
        types: ['input', 'var', 'function']
      },
      {
        default: '',
        types: ['input', 'var', 'function']
      }
    ],
    variable: true
  },
  {
    value: 'min',
    text: '求最小值',
    description: '返回一组数值中的最小值',
    parameters: [
      {
        default: '',
        types: ['input', 'var', 'function']
      },
      {
        default: '',
        types: ['input', 'var', 'function']
      }
    ],
    variable: true
  },
  {
    value: 'avg',
    text: '求平均值',
    description: '返回一组数值的平均值',
    parameters: [
      {
        default: '',
        types: ['input', 'var', 'function']
      },
      {
        default: '',
        types: ['input', 'var', 'function']
      }
    ],
    variable: true
  },
  {
    value: 'add',
    text: '加法',
    parameters: [
      {
        default: '',
        types: ['input', 'var', 'function']
      },
      {
        default: '',
        types: ['input', 'var', 'function']
      }
    ],
    variable: true
  },
  {
    value: 'sub',
    text: '减法',
    parameters: [
      {
        default: '',
        types: ['input', 'var', 'function']
      },
      {
        default: '',
        types: ['input', 'var', 'function']
      }
    ],
    variable: false
  },
  {
    value: 'pro',
    text: '乘法',
    parameters: [
      {
        default: '',
        types: ['input', 'var', 'function']
      },
      {
        default: '',
        types: ['input', 'var', 'function']
      }
    ],
    variable: true
  },
  {
    value: 'div',
    text: '除法',
    parameters: [
      {
        default: '',
        types: ['input', 'var', 'function']
      },
      {
        default: '',
        types: ['input', 'var', 'function']
      }
    ],
    variable: true
  },
  {
    value: 'length',
    text: '求字段长度',
    description: '返回参数的字段长度',
    parameters: [
      {
        description: '参数值',
        types: ['input', 'var']
      }
    ],
    variable: false
  }
]
// 上传来源
export const dataSourceList = [
  { value: 1, label: 'api' },
  { value: 0, label: 'web' }
]
